[INFO] fetching crate hamlrs 0.4.3...
[INFO] checking hamlrs-0.4.3 against master#09a371361240e42b0d69438fd1179efcf212e576 for pr-157814-crater-rollup
[INFO] extracting crate hamlrs 0.4.3 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate hamlrs 0.4.3
[INFO] finished tweaking crates.io crate hamlrs 0.4.3
[INFO] tweaked toml for crates.io crate hamlrs 0.4.3 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate hamlrs 0.4.3 on toolchain 09a371361240e42b0d69438fd1179efcf212e576
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 53 packages to latest compatible versions
[INFO] [stderr]       Adding criterion v0.2.11 (available: v0.8.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `hamlrs` (manifest) generated 1 warning
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rand_xoshiro v0.1.0
[INFO] [stderr]   Downloaded criterion v0.2.11
[INFO] [stderr]   Downloaded criterion-plot v0.3.1
[INFO] [stderr]   Downloaded cast v0.2.7
[INFO] [stderr]   Downloaded itertools v0.8.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 164ebec4d75011c75fde03ad8b99fb536e0ed60eb6e262814ad9530536232745
[INFO] running `Command { std: "docker" "start" "164ebec4d75011c75fde03ad8b99fb536e0ed60eb6e262814ad9530536232745", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "164ebec4d75011c75fde03ad8b99fb536e0ed60eb6e262814ad9530536232745" "/opt/rustwide/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "164ebec4d75011c75fde03ad8b99fb536e0ed60eb6e262814ad9530536232745", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "164ebec4d75011c75fde03ad8b99fb536e0ed60eb6e262814ad9530536232745" "/opt/rustwide/cargo-home/bin/cargo" "+09a371361240e42b0d69438fd1179efcf212e576" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `hamlrs` (manifest) generated 1 warning
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking either v1.16.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking hamlrs v0.4.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking rand_xoshiro v0.1.0
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking itertools v0.8.2
[INFO] [stdout] warning: value assigned to `token` is never read
[INFO] [stdout]   --> src/parser.rs:71:41
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let mut token: Option<&Token> = None;
[INFO] [stdout]    |                                         ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 77 |                 token = self.current_token;
[INFO] [stdout]    |                 -------------------------- `token` is overwritten here before the previous value is read
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `class` is never read
[INFO] [stdout]   --> src/parser.rs:86:41
[INFO] [stdout]    |
[INFO] [stdout] 86 |                         let mut class = String::new();
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 89 |                             Some(Token::Text(txt)) => class = txt.to_string(),
[INFO] [stdout]    |                                                       ----- `class` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `id` is never read
[INFO] [stdout]    --> src/parser.rs:101:38
[INFO] [stdout]     |
[INFO] [stdout] 101 |                         let mut id = String::new();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 104 |                             Some(Token::Text(txt)) => id = txt.to_string(),
[INFO] [stdout]     |                                                       -- `id` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stdout] warning: value assigned to `value` is never read
[INFO] [stdout]   --> src/scanner.rs:68:48
[INFO] [stdout]    |
[INFO] [stdout] 68 |                 let mut value: Option<Token> = None;
[INFO] [stdout]    |                                                ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 72 |                             value = Some(Token::Text(text_builder.to_string()));
[INFO] [stdout]    |                             ----- `value` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `indentation` is never read
[INFO] [stdout]    --> src/ast.rs:249:5
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct Node {
[INFO] [stdout]     |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 249 |     indentation: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Node` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:140:49
[INFO] [stdout]     |
[INFO] [stdout] 140 | ...                   Some(tok) => panic!(format!("Expecting Text but found {:?}", tok)),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 140 -                             Some(tok) => panic!(format!("Expecting Text but found {:?}", tok)),
[INFO] [stdout] 140 +                             Some(tok) => panic!("Expecting Text but found {:?}", tok),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains a brace
[INFO] [stdout]    --> src/parser.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 | ...                   panic!("Unexpected \"{\" while parsing");
[INFO] [stdout]     |                                            ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string, but will be in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 164 |                             panic!("{}", "Unexpected \"{\" while parsing");
[INFO] [stdout]     |                                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:167:33
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     t => panic!(format!("Unsupported feature: {:?}", t)),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 167 -                     t => panic!(format!("Unsupported feature: {:?}", t)),
[INFO] [stdout] 167 +                     t => panic!("Unsupported feature: {:?}", t),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:184:49
[INFO] [stdout]     |
[INFO] [stdout] 184 | ...   Some(tok) => panic!(format!("Expected an identifier after a colon when parsing attributes but found {:?}", tok)),
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 184 -                             Some(tok) => panic!(format!("Expected an identifier after a colon when parsing attributes but found {:?}", tok)),
[INFO] [stdout] 184 +                             Some(tok) => panic!("Expected an identifier after a colon when parsing attributes but found {:?}", tok),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:206:65
[INFO] [stdout]     |
[INFO] [stdout] 206 | ...                   Some(tok) => panic!(format!("Unexpected token {:?} in attribute array.", tok )),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 206 -                                             Some(tok) => panic!(format!("Unexpected token {:?} in attribute array.", tok )),
[INFO] [stdout] 206 +                                             Some(tok) => panic!("Unexpected token {:?} in attribute array.", tok ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:212:53
[INFO] [stdout]     |
[INFO] [stdout] 212 | ...                   Some(tok) => panic!(format!("Expecting value after attribute id in attributes but found {:?}", tok)),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 212 -                                 Some(tok) => panic!(format!("Expecting value after attribute id in attributes but found {:?}", tok)),
[INFO] [stdout] 212 +                                 Some(tok) => panic!("Expecting value after attribute id in attributes but found {:?}", tok),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking criterion-plot v0.3.1
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.2.11
[INFO] [stdout] warning: unexpected `cfg` condition value: `unstable`
[INFO] [stdout]   --> tests/basic_tests.rs:55:11
[INFO] [stdout]    |
[INFO] [stdout] 55 | #[cfg(all(feature = "unstable", test))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `unstable` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `token` is never read
[INFO] [stdout]   --> src/parser.rs:71:41
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let mut token: Option<&Token> = None;
[INFO] [stdout]    |                                         ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 77 |                 token = self.current_token;
[INFO] [stdout]    |                 -------------------------- `token` is overwritten here before the previous value is read
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `class` is never read
[INFO] [stdout]   --> src/parser.rs:86:41
[INFO] [stdout]    |
[INFO] [stdout] 86 |                         let mut class = String::new();
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 89 |                             Some(Token::Text(txt)) => class = txt.to_string(),
[INFO] [stdout]    |                                                       ----- `class` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `id` is never read
[INFO] [stdout]    --> src/parser.rs:101:38
[INFO] [stdout]     |
[INFO] [stdout] 101 |                         let mut id = String::new();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 104 |                             Some(Token::Text(txt)) => id = txt.to_string(),
[INFO] [stdout]     |                                                       -- `id` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `value` is never read
[INFO] [stdout]   --> src/scanner.rs:68:48
[INFO] [stdout]    |
[INFO] [stdout] 68 |                 let mut value: Option<Token> = None;
[INFO] [stdout]    |                                                ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 72 |                             value = Some(Token::Text(text_builder.to_string()));
[INFO] [stdout]    |                             ----- `value` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `indentation` is never read
[INFO] [stdout]    --> src/ast.rs:249:5
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct Node {
[INFO] [stdout]     |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 249 |     indentation: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Node` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:140:49
[INFO] [stdout]     |
[INFO] [stdout] 140 | ...                   Some(tok) => panic!(format!("Expecting Text but found {:?}", tok)),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 140 -                             Some(tok) => panic!(format!("Expecting Text but found {:?}", tok)),
[INFO] [stdout] 140 +                             Some(tok) => panic!("Expecting Text but found {:?}", tok),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains a brace
[INFO] [stdout]    --> src/parser.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 | ...                   panic!("Unexpected \"{\" while parsing");
[INFO] [stdout]     |                                            ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string, but will be in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 164 |                             panic!("{}", "Unexpected \"{\" while parsing");
[INFO] [stdout]     |                                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:167:33
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     t => panic!(format!("Unsupported feature: {:?}", t)),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 167 -                     t => panic!(format!("Unsupported feature: {:?}", t)),
[INFO] [stdout] 167 +                     t => panic!("Unsupported feature: {:?}", t),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:184:49
[INFO] [stdout]     |
[INFO] [stdout] 184 | ...   Some(tok) => panic!(format!("Expected an identifier after a colon when parsing attributes but found {:?}", tok)),
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 184 -                             Some(tok) => panic!(format!("Expected an identifier after a colon when parsing attributes but found {:?}", tok)),
[INFO] [stdout] 184 +                             Some(tok) => panic!("Expected an identifier after a colon when parsing attributes but found {:?}", tok),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:206:65
[INFO] [stdout]     |
[INFO] [stdout] 206 | ...                   Some(tok) => panic!(format!("Unexpected token {:?} in attribute array.", tok )),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 206 -                                             Some(tok) => panic!(format!("Unexpected token {:?} in attribute array.", tok )),
[INFO] [stdout] 206 +                                             Some(tok) => panic!("Unexpected token {:?} in attribute array.", tok ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/parser.rs:212:53
[INFO] [stdout]     |
[INFO] [stdout] 212 | ...                   Some(tok) => panic!(format!("Expecting value after attribute id in attributes but found {:?}", tok)),
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 212 -                                 Some(tok) => panic!(format!("Expecting value after attribute id in attributes but found {:?}", tok)),
[INFO] [stdout] 212 +                                 Some(tok) => panic!("Expecting value after attribute id in attributes but found {:?}", tok),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.96s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "164ebec4d75011c75fde03ad8b99fb536e0ed60eb6e262814ad9530536232745", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "164ebec4d75011c75fde03ad8b99fb536e0ed60eb6e262814ad9530536232745", kill_on_drop: false }`
[INFO] [stdout] 164ebec4d75011c75fde03ad8b99fb536e0ed60eb6e262814ad9530536232745
